library(tidyverse)
library(scales)
library(readxl)
library(writexl)
library(phonR)
library(extrafont)
(vokale <- read_xlsx("data/S03_Vokalformanten_Diagramme.xlsx", sheet ="A1-4_alle") %>%
janitor::clean_names() %>%
select(-studierende) %>%
mutate(geschlecht = "f") %>%
select(sprecherin, geschlecht, vokal, f1, f2, dauer, lange, wort, phrase) %>%
mutate(l1_l2 = ifelse(sprecherin == "Deutsche", "L1", "L2")) %>%
mutate(vokal = str_replace(vokal, "F:", "E:")) %>%
mutate(vowel = vokal) # %>%
# mutate(vowel = str_replace(vowel, "ü\\:", "ii\\:"),
# vowel = str_replace(vowel, "Ü", "II"),
# vowel = str_replace(vowel, "ö\\:", "ee\\:"),
# vowel = str_replace(vowel, "Ö", "EE"))
)
## # A tibble: 180 x 11
## sprecherin geschlecht vokal f1 f2 dauer lange wort phrase l1_l2 vowel
## <chr> <chr> <chr> <dbl> <dbl> <dbl> <chr> <chr> <chr> <chr> <chr>
## 1 Deutsche f a 764 1746 88 kurz Stadt Phrase~ L1 a
## 2 Deutsche f a 724 1741 104 kurz Stadt Phrase~ L1 a
## 3 Deutsche f a 810 1740 55 kurz Stadt Phrase~ L1 a
## 4 Deutsche f a 735 1741 99 kurz Stadt Phrase~ L1 a
## 5 Deutsche f a 1346 2487 59 kurz Stadt Phrase~ L1 a
## 6 Deutsche f a 242 2236 162 kurz Stadt Phrase~ L1 a
## 7 Adelina f a 901 1276 79 kurz Stadt Phrase~ L2 a
## 8 Donna f a 1029 1999 48 kurz Stadt Phrase~ L2 a
## 9 Jasmina f a 1051 1877 50 kurz Stadt Phrase~ L2 a
## 10 Metka f a 722 1202 150 kurz Stadt Phrase~ L2 a
## # ... with 170 more rows
(vergleich <- read_xlsx("data/S03_Vokalformanten_Diagramme.xlsx", sheet ="A10_Vgl_L1_L2_tab") %>%
janitor::clean_names() %>%
mutate(phonem = str_replace(phonem, "EE", "E:")) %>%
rename(f1_l1 = f1_in_hz,
f2_l1 = f2_in_hz,
dauer_l1 = dauer_in_ms,
vokal = phonem)
)
## New names:
## * `Phonem IPA` -> `Phonem IPA...1`
## * `Phonem IPA` -> `Phonem IPA...2`
## # A tibble: 16 x 10
## phonem_ipa_1 phonem_ipa_2 vokal f1_l1 f2_l1 dauer_l1 f1_l2 f2_l2 dauer_l2
## <chr> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 "a" /a/ a 836 1586 82.8 840. 1583. 73.7
## 2 "aù" /a:/ a: 896 1517 154. 784 1632 208.
## 3 "eù" /e:/ e: 434 2461 118. 553. 2062. 140.
## 4 "E" /E/ E 608 2040 82.7 560 1953. 72.5
## 5 "Eù" /E:/ E: 584 2166 126. 566. 2062. 142.
## 6 "I" /i:/ I 433 2095 86.8 372 1900 59.3
## 7 "iù" /I/ i: 302 2533 54.5 344. 1982. 160.
## 8 "\u008d" /O/ O 605 1200 89.2 796. 1538 69
## 9 "où" /o:/ o: 440 889 128. 703. 1422. 124.
## 10 "u" /Ú/ U 442 1081 63.4 608. 1406. 58.8
## 11 "uù" /u:/ u: 345 956 78.5 574. 1335. 120.
## 12 "Y" /Y/ Ü 426 1670 59.8 492. 1790 70.6
## 13 "yù" /y:/ ü: 320 1810 97.6 461. 1858. 155
## 14 "¿" /œ/ Ö 564 1654 77.2 552. 1686 66
## 15 "Où" /ø/ ö: 440 1605 115. 580. 1741 157.
## 16 "«" /«/ @ 572 1763 NA NA NA NA
## # ... with 1 more variable: lange <chr>
glimpse(vokale)
## Rows: 180
## Columns: 11
## $ sprecherin <chr> "Deutsche", "Deutsche", "Deutsche", "Deutsche", "Deutsche",~
## $ geschlecht <chr> "f", "f", "f", "f", "f", "f", "f", "f", "f", "f", "f", "f",~
## $ vokal <chr> "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a",~
## $ f1 <dbl> 764, 724, 810, 735, 1346, 242, 901, 1029, 1051, 722, 768, 5~
## $ f2 <dbl> 1746, 1741, 1740, 1741, 2487, 2236, 1276, 1999, 1877, 1202,~
## $ dauer <dbl> 88, 104, 55, 99, 59, 162, 79, 48, 50, 150, 72, 43, 184, 272~
## $ lange <chr> "kurz", "kurz", "kurz", "kurz", "kurz", "kurz", "kurz", "ku~
## $ wort <chr> "Stadt", "Stadt", "Stadt", "Stadt", "Stadt", "Stadt", "Stad~
## $ phrase <chr> "Phrase 014", "Phrase 014", "Phrase 014", "Phrase 014", "Ph~
## $ l1_l2 <chr> "L1", "L1", "L1", "L1", "L1", "L1", "L2", "L2", "L2", "L2",~
## $ vowel <chr> "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a",~
df0 <- read.csv("data/Deutsche_formants.Table.csv", stringsAsFactors = FALSE, fileEncoding = "UTF-8")
df1a <- read.csv("data/Monika_I_formants.Table.csv", stringsAsFactors = FALSE, fileEncoding = "UTF-8")
df1b <- read.csv("data/Monika_II_formants.Table.csv", stringsAsFactors = FALSE, fileEncoding = "UTF-8")
df2 <- read.csv("data/Donna_formants.Table.csv", stringsAsFactors = FALSE, fileEncoding = "UTF-8")
df3 <- read.csv("data/Metka_formants.Table.csv", stringsAsFactors = FALSE, fileEncoding = "UTF-8")
df4 <- read.csv("data/Jasmina_formants.Table.csv", stringsAsFactors = FALSE, fileEncoding = "UTF-8")
df5 <- read.csv("data/Teodor_II_formants.Table.csv", stringsAsFactors = FALSE, fileEncoding = "UTF-8")
df0 <- df0 %>% mutate(speaker = "Deutsche")
df1a <- df1a %>% mutate(speaker = "Monika1")
df1b <- df1b %>% mutate(speaker = "Monika2")
df2 <- df2 %>% mutate(speaker = "Donna")
df3 <- df3 %>% mutate(speaker = "Metka")
df4 <- df4 %>% mutate(speaker = "Jasmina")
df5 <- df5 %>% mutate(speaker = "Teodor")
df <- rbind(df0,df1a,df1b,df2,df3,df4,df5)
# # uncomment code below if needed
# library(linguisticsdown)
# writeIPA()
par(family='Helvetica')
par(family = "Charis SIL")
i = "i:"
I = "ɪ"
y = "y:"
Y = "ʏ"
e = "e:"
E = "ɛ"
EE = "ɛ\u02D0"
oe = "ø:"
oe = "ø\u02D0"
# oe = "\u00F8" # wird nicht gedruckt
# oe = "\u00D8" # ok, aber eigentlich ein anderes Phonem
# oe = "\u2205" # ok, aber eigentlich ein anderes Phonem
# oe = "ø" # wird nicht gedruckt
OE = "œ"
# OE = "\u0153"
# OE = "œ"
schwa = "ə"
a = "a"
A = "a:"
o = "o:"
O = "ɔ"
u = "u:"
U = "ʊ"
ipavow = c(a,A,e,E,EE,I,i,O,o,U,u,Y,y,OE,oe, schwa) %>% as_tibble() %>% rename(vowel = value)
(vergleich <- vergleich %>% cbind(ipavow) %>% select(-phonem_ipa_1, -phonem_ipa_2))
## vokal f1_l1 f2_l1 dauer_l1 f1_l2 f2_l2 dauer_l2 lange
## 1 a 836 1586 82.82 839.5000 1582.667 73.66667 kurz
## 2 a: 896 1517 153.58 784.0000 1632.000 207.50000 lang
## 3 e: 434 2461 117.95 552.9167 2062.500 139.75000 lang
## 4 E 608 2040 82.69 560.0000 1953.167 72.50000 kurz
## 5 E: 584 2166 126.17 566.5000 2061.833 142.50000 lang
## 6 I 433 2095 86.75 372.0000 1900.000 59.33333 kurz
## 7 i: 302 2533 54.46 344.3333 1981.833 159.83333 lang
## 8 O 605 1200 89.18 796.5000 1538.000 69.00000 kurz
## 9 o: 440 889 127.55 703.3333 1422.167 124.33333 lang
## 10 U 442 1081 63.43 607.6667 1405.833 58.83333 kurz
## 11 u: 345 956 78.51 573.5000 1334.833 120.33333 lang
## 12 Ü 426 1670 59.85 492.2500 1790.000 70.57143 kurz
## 13 ü: 320 1810 97.64 461.2500 1857.500 155.00000 lang
## 14 Ö 564 1654 77.20 552.1667 1686.000 66.00000 kurz
## 15 ö: 440 1605 115.40 579.5000 1741.000 156.66667 lang
## 16 @ 572 1763 NA NA NA NA <NA>
## vowel
## 1 a
## 2 a:
## 3 e:
## 4 <U+025B>
## 5 <U+025B><U+02D0>
## 6 <U+026A>
## 7 i:
## 8 <U+0254>
## 9 o:
## 10 <U+028A>
## 11 u:
## 12 <U+028F>
## 13 y:
## 14 œ
## 15 ø<U+02D0>
## 16 <U+0259>
# Deutsche Vokale
vowel_lookup =
c(
ii = "i:",
I = "ɪ",
yy = "y:",
Y = "ʏ",
ee = "e:",
E = "ɛ",
EE = "ɛ\u02D0",
Ea = "ɛa",
oe = "ø:",
oe = "ø\u02D0",
# oe = "\u00F8" # wird nicht gedruckt
# oe = "\u00D8" # ok, aber eigentlich ein anderes Phonem
# oe = "\u2205" # ok, aber eigentlich ein anderes Phonem
# oe = "ø" # wird nicht gedruckt
OE = "œ",
OOE = "œ:",
# OE = "\u0153"
# OE = "œ"
schwa = "ə",
a = "a",
AA = "a:",
oo = "o:",
O = "ɔ",
OO = "ɔ:",
uu = "u:",
U = "ʊ"
)
(df$IPA <- vowel_lookup[df$vowel])
## [1] "i:" "i:" "i:" "i:" "i:" "i:"
## [7] "i:" "i:" "i:" "i:" "i:" "i:"
## [13] "i:" "i:" "i:" "<U+026A>" "<U+026A>" "<U+026A>"
## [19] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [25] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [31] "e:" "e:" "e:" "e:" "e:" "e:"
## [37] "e:" "e:" "e:" "e:" "e:" "e:"
## [43] "e:" "e:" "e:" "<U+025B>" "<U+025B>" "<U+025B>"
## [49] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [55] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [61] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [67] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [73] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "y:" "y:" "y:"
## [79] "y:" "y:" "y:" "y:" "y:" "y:"
## [85] "y:" "y:" "y:" "y:" "y:" "y:"
## [91] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [97] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [103] "<U+028F>" "<U+028F>" "<U+028F>" "ø:" "ø:" "ø:"
## [109] "ø:" "ø:" "ø:" "ø:" "ø:" "ø:"
## [115] "ø:" "ø:" "ø:" "ø:" "ø:" "ø:"
## [121] "œ" "œ" "œ" "œ" "œ" "œ"
## [127] "œ" "œ" "œ" "œ" "œ" "œ"
## [133] "œ" "œ" "œ" "a:" "a:" "a:"
## [139] "a:" "a:" "a:" "a:" "a:" "a:"
## [145] "a:" "a:" "a:" "a:" "a:" "a:"
## [151] "a" "a" "a" "a" "a" "a"
## [157] "a" "a" "a" "a" "a" "a"
## [163] "a" "a" "a" "u:" "u:" "u:"
## [169] "u:" "u:" "u:" "u:" "u:" "u:"
## [175] "u:" "u:" "u:" "u:" "u:" "u:"
## [181] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [187] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [193] "<U+028A>" "<U+028A>" "<U+028A>" "o:" "o:" "o:"
## [199] "o:" "o:" "o:" "o:" "o:" "o:"
## [205] "o:" "o:" "o:" "o:" "o:" "o:"
## [211] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [217] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [223] "<U+0254>" "<U+0254>" "<U+0254>" "i:" "i:" "i:"
## [229] "i:" "i:" "i:" "i:" "i:" "i:"
## [235] "i:" "i:" "i:" "i:" "i:" "i:"
## [241] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [247] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [253] "<U+026A>" "<U+026A>" "<U+026A>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [259] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [265] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [271] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [277] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [283] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [289] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [295] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [301] NA NA NA NA NA NA
## [307] NA NA NA NA NA NA
## [313] NA NA NA "<U+028F>" "<U+028F>" "<U+028F>"
## [319] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [325] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [331] "œ:" "œ:" "œ:" "œ:" "œ:" "œ:"
## [337] "œ:" "œ:" "œ:" "œ:" "œ:" "œ:"
## [343] "œ:" "œ:" "œ:" "œ" "œ" "œ"
## [349] "œ" "œ" "œ" "œ" "œ" "œ"
## [355] "œ" "œ" "œ" "œ" "œ" "œ"
## [361] "a:" "a:" "a:" "a:" "a:" "a:"
## [367] "a:" "a:" "a:" "a:" "a:" "a:"
## [373] "a:" "a:" "a:" "a" "a" "a"
## [379] "a" "a" "a" "a" "a" "a"
## [385] "a" "a" "a" "a" "a" "a"
## [391] "u:" "u:" "u:" "u:" "u:" "u:"
## [397] "u:" "u:" "u:" "u:" "u:" "u:"
## [403] "u:" "u:" "u:" "<U+028A>" "<U+028A>" "<U+028A>"
## [409] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [415] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [421] "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:"
## [427] "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:"
## [433] "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>" "<U+0254>" "<U+0254>"
## [439] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [445] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [451] "i:" "i:" "i:" "i:" "i:" "i:"
## [457] "i:" "i:" "i:" "i:" "i:" "i:"
## [463] "i:" "i:" "i:" "<U+025B>a" "<U+025B>a" "<U+025B>a"
## [469] "<U+025B>a" "<U+025B>a" "<U+025B>a" "<U+025B>a" "<U+025B>a" "<U+025B>a"
## [475] "<U+025B>a" "<U+025B>a" "<U+025B>a" "<U+025B>a" "<U+025B>a" "<U+025B>a"
## [481] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [487] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [493] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "y:" "y:" "y:"
## [499] "y:" "y:" "y:" "y:" "y:" "y:"
## [505] "y:" "y:" "y:" "y:" "y:" "y:"
## [511] "œ:" "œ:" "œ:" "œ:" "œ:" "œ:"
## [517] "œ:" "œ:" "œ:" "œ:" "œ:" "œ:"
## [523] "œ:" "œ:" "œ:" "a:" "a:" "a:"
## [529] "a:" "a:" "a:" "a:" "a:" "a:"
## [535] "a:" "a:" "a:" "a:" "a:" "a:"
## [541] "u:" "u:" "u:" "u:" "u:" "u:"
## [547] "u:" "u:" "u:" "u:" "u:" "u:"
## [553] "u:" "u:" "u:" "<U+0254>:" "<U+0254>:" "<U+0254>:"
## [559] "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:"
## [565] "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:"
## [571] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [577] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [583] "<U+026A>" "<U+026A>" "<U+026A>" "<U+025B>" "<U+025B>" "<U+025B>"
## [589] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [595] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [601] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [607] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [613] "<U+028F>" "<U+028F>" "<U+028F>" "œ" "œ" "œ"
## [619] "œ" "œ" "œ" "œ" "œ" "œ"
## [625] "œ" "œ" "œ" "œ" "œ" "œ"
## [631] "a" "a" "a" "a" "a" "a"
## [637] "a" "a" "a" "a" "a" "a"
## [643] "a" "a" "a" "<U+028A>" "<U+028A>" "<U+028A>"
## [649] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [655] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [661] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [667] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [673] "<U+0254>" "<U+0254>" "<U+0254>" "i:" "i:" "i:"
## [679] "i:" "i:" "i:" "i:" "i:" "i:"
## [685] "i:" "i:" "i:" "i:" "i:" "i:"
## [691] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [697] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [703] "<U+026A>" "<U+026A>" "<U+026A>" "e:" "e:" "e:"
## [709] "e:" "e:" "e:" "e:" "e:" "e:"
## [715] "e:" "e:" "e:" "e:" "e:" "e:"
## [721] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [727] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [733] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [739] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [745] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [751] "y:" "y:" "y:" "y:" "y:" "y:"
## [757] "y:" "y:" "y:" "y:" "y:" "y:"
## [763] "y:" "y:" "y:" "<U+028F>" "<U+028F>" "<U+028F>"
## [769] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [775] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [781] "œ:" "œ:" "œ:" "œ:" "œ:" "œ:"
## [787] "œ:" "œ:" "œ:" "œ:" "œ:" "œ:"
## [793] "œ:" "œ:" "œ:" "œ" "œ" "œ"
## [799] "œ" "œ" "œ" "œ" "œ" "œ"
## [805] "œ" "œ" "œ" "œ" "œ" "œ"
## [811] "a:" "a:" "a:" "a:" "a:" "a:"
## [817] "a:" "a:" "a:" "a:" "a:" "a:"
## [823] "a:" "a:" "a:" "a" "a" "a"
## [829] "a" "a" "a" "a" "a" "a"
## [835] "a" "a" "a" "a" "a" "a"
## [841] NA NA NA NA NA NA
## [847] NA NA NA NA NA NA
## [853] NA NA NA "<U+028A>" "<U+028A>" "<U+028A>"
## [859] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [865] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [871] "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:"
## [877] "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0254>:"
## [883] "<U+0254>:" "<U+0254>:" "<U+0254>:" "<U+0259>" "<U+0259>" "<U+0259>"
## [889] "<U+0259>" "<U+0259>" "<U+0259>" "<U+0259>" "<U+0259>" "<U+0259>"
## [895] "<U+0259>" "<U+0259>" "<U+0259>" "<U+0259>" "<U+0259>" "<U+0259>"
## [901] "a" "a" "a" "a" "a" "a"
## [907] "a" "a" "a" "a" "a" "a"
## [913] "a" "a" "a" "a:" "a:" "a:"
## [919] "a:" "a:" "a:" "a:" "a:" "a:"
## [925] "a:" "a:" "a:" "a:" "a:" "a:"
## [931] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [937] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [943] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [949] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [955] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [961] "e:" "e:" "e:" "e:" "e:" "e:"
## [967] "e:" "e:" "e:" "e:" "e:" "e:"
## [973] "e:" "e:" "e:" "<U+026A>" "<U+026A>" "<U+026A>"
## [979] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [985] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [991] "i:" "i:" "i:" "i:" "i:" "i:"
## [997] "i:" "i:" "i:" "i:" "i:" "i:"
## [1003] "i:" "i:" "i:" "<U+0254>" "<U+0254>" "<U+0254>"
## [1009] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [1015] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [1021] "œ:" "œ:" "œ:" "œ:" "œ:" "œ:"
## [1027] "œ:" "œ:" "œ:" "œ:" "œ:" "œ:"
## [1033] "œ:" "œ:" "œ:" "<U+0254>" "<U+0254>" "<U+0254>"
## [1039] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [1045] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [1051] "œ:" "œ:" "œ:" "œ:" "œ:" "œ:"
## [1057] "œ:" "œ:" "œ:" "œ:" "œ:" "œ:"
## [1063] "œ:" "œ:" "œ:" "<U+028A>" "<U+028A>" "<U+028A>"
## [1069] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [1075] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [1081] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [1087] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [1093] "<U+028F>" "<U+028F>" "<U+028F>" "u:" "u:" "u:"
## [1099] "u:" "u:" "u:" "u:" "u:" "u:"
## [1105] "u:" "u:" "u:" "u:" "u:" "u:"
## [1111] "y:" "y:" "y:" "y:" "y:" "y:"
## [1117] "y:" "y:" "y:" "y:" "y:" "y:"
## [1123] "y:" "y:" "y:" "<U+026A>" "<U+026A>" "<U+026A>"
## [1129] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [1135] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [1141] "e:" "e:" "e:" "e:" "e:" "e:"
## [1147] "e:" "e:" "e:" "e:" "e:" "e:"
## [1153] "e:" "e:" "e:" "<U+028A>" "<U+028A>" "<U+028A>"
## [1159] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [1165] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [1171] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [1177] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [1183] "<U+0254>" "<U+0254>" "<U+0254>" "<U+028F>" "<U+028F>" "<U+028F>"
## [1189] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [1195] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [1201] "œ" "œ" "œ" "œ" "œ" "œ"
## [1207] "œ" "œ" "œ" "œ" "œ" "œ"
## [1213] "œ" "œ" "œ" "a" "a" "a"
## [1219] "a" "a" "a" "a" "a" "a"
## [1225] "a" "a" "a" "a" "a" "a"
## [1231] "u:" "u:" "u:" "u:" "u:" "u:"
## [1237] "u:" "u:" "u:" "u:" "u:" "u:"
## [1243] "u:" "u:" "u:" "y:" "y:" "y:"
## [1249] "y:" "y:" "y:" "y:" "y:" "y:"
## [1255] "y:" "y:" "y:" "y:" "y:" "y:"
## [1261] "o:" "o:" "o:" "o:" "o:" "o:"
## [1267] "o:" "o:" "o:" "o:" "o:" "o:"
## [1273] "o:" "o:" "o:" "i:" "i:" "i:"
## [1279] "i:" "i:" "i:" "i:" "i:" "i:"
## [1285] "i:" "i:" "i:" "i:" "i:" "i:"
## [1291] "e:" "e:" "e:" "e:" "e:" "e:"
## [1297] "e:" "e:" "e:" "e:" "e:" "e:"
## [1303] "e:" "e:" "e:" "e:" "e:" "e:"
## [1309] "e:" "e:" "e:" "e:" "e:" "e:"
## [1315] "e:" "e:" "e:" "e:" "e:" "e:"
## [1321] "œ" "œ" "œ" "œ" "œ" "œ"
## [1327] "œ" "œ" "œ" "œ" "œ" "œ"
## [1333] "œ" "œ" "œ" "a:" "a:" "a:"
## [1339] "a:" "a:" "a:" "a:" "a:" "a:"
## [1345] "a:" "a:" "a:" "a:" "a:" "a:"
## [1351] "e:" "e:" "e:" "e:" "e:" "e:"
## [1357] "e:" "e:" "e:" "e:" "e:" "e:"
## [1363] "e:" "e:" "e:" "i:" "i:" "i:"
## [1369] "i:" "i:" "i:" "i:" "i:" "i:"
## [1375] "i:" "i:" "i:" "i:" "i:" "i:"
## [1381] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [1387] "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>" "<U+026A>"
## [1393] "<U+026A>" "<U+026A>" "<U+026A>" "e:" "e:" "e:"
## [1399] "e:" "e:" "e:" "e:" "e:" "e:"
## [1405] "e:" "e:" "e:" "e:" "e:" "e:"
## [1411] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [1417] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B>"
## [1423] "<U+025B>" "<U+025B>" "<U+025B>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [1429] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [1435] "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>" "<U+025B><U+02D0>"
## [1441] "y:" "y:" "y:" "y:" "y:" "y:"
## [1447] "y:" "y:" "y:" "y:" "y:" "y:"
## [1453] "y:" "y:" "y:" "<U+028F>" "<U+028F>" "<U+028F>"
## [1459] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [1465] "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>" "<U+028F>"
## [1471] "ø:" "ø:" "ø:" "ø:" "ø:" "ø:"
## [1477] "ø:" "ø:" "ø:" "ø:" "ø:" "ø:"
## [1483] "ø:" "ø:" "ø:" "œ" "œ" "œ"
## [1489] "œ" "œ" "œ" "œ" "œ" "œ"
## [1495] "œ" "œ" "œ" "œ" "œ" "œ"
## [1501] "a:" "a:" "a:" "a:" "a:" "a:"
## [1507] "a:" "a:" "a:" "a:" "a:" "a:"
## [1513] "a:" "a:" "a:" "a" "a" "a"
## [1519] "a" "a" "a" "a" "a" "a"
## [1525] "a" "a" "a" "a" "a" "a"
## [1531] "u:" "u:" "u:" "u:" "u:" "u:"
## [1537] "u:" "u:" "u:" "u:" "u:" "u:"
## [1543] "u:" "u:" "u:" "<U+028A>" "<U+028A>" "<U+028A>"
## [1549] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [1555] "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>" "<U+028A>"
## [1561] "o:" "o:" "o:" "o:" "o:" "o:"
## [1567] "o:" "o:" "o:" "o:" "o:" "o:"
## [1573] "o:" "o:" "o:" "<U+0254>" "<U+0254>" "<U+0254>"
## [1579] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
## [1585] "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>" "<U+0254>"
(vgl_pivot <- vergleich %>%
group_by(vokal) %>%
pivot_longer(f1_l1:dauer_l2, names_to = "category", values_to = "value") %>%
separate(category, into = c("category", "l1_l2")) %>%
drop_na() %>%
pivot_wider(names_from = category, values_from = value)
)
## # A tibble: 30 x 7
## # Groups: vokal [15]
## vokal lange vowel l1_l2 f1 f2 dauer
## <chr> <chr> <chr> <chr> <dbl> <dbl> <dbl>
## 1 a kurz a l1 836 1586 82.8
## 2 a kurz a l2 840. 1583. 73.7
## 3 a: lang a: l1 896 1517 154.
## 4 a: lang a: l2 784 1632 208.
## 5 e: lang e: l1 434 2461 118.
## 6 e: lang e: l2 553. 2062. 140.
## 7 E kurz <U+025B> l1 608 2040 82.7
## 8 E kurz <U+025B> l2 560 1953. 72.5
## 9 E: lang <U+025B><U+02D0> l1 584 2166 126.
## 10 E: lang <U+025B><U+02D0> l2 566. 2062. 142.
## # ... with 20 more rows
# par(family='Charis SIL')
(graph4 <- vgl_pivot %>%
drop_na() %>%
group_by(vokal, l1_l2, lange) %>%
ggplot(aes(f2,f1, label = vowel)) +
geom_hex(alpha = 0.2, show.legend = F) +
theme(text=element_text(size=16)) + # family = "Charis SIL"
geom_text(aes(label = vowel, color = vowel), # family = "Charis SIL"
vjust = 1, hjust = 1, check_overlap = T, show.legend = F, size = 6) +
# geom_label(aes(x = mean(f2), y = mean(f1)), color = "black") +
# stat_ellipse() +
scale_y_reverse() +
scale_x_reverse(breaks = c(1000, 1250, 1500, 1750, 2000, 2250, 2500)) +
facet_wrap(~ lange + l1_l2) +
theme_light() +
labs(y = "Formant F1: tief >> hoch",
x = "Formant F2: << vorne - hinten >>") +
theme(#panel.grid.major=element_blank(),
#panel.grid.minor=element_blank(),
# text = element_text(family='Charis SIL'),
plot.title = element_text(hjust = 0.5),
legend.position = "none")
)
ggsave("pictures/vergleich_vokalformanten_lang_kurz_ipa.jpg")
## Saving 7 x 5 in image
library(plotly)
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
ggplotly(graph4) %>% layout(showlegend = FALSE)
font = list(
# family = 'Charis SIL',
family = 'Arial',
size = 15,
color = "black"
)
label = list(
bgcolor = "white",
bordercolor = "transparent",
font = font
)
library(plotly)
(graph4_interactive <- ggplotly(graph4, tooltip=c("x", "y", "text")) %>%
style(hoverlabel = label) %>%
layout(showlegend = FALSE,
font = font,
yaxis = list(fixedrange = TRUE),
xaxis = list(fixedrange = TRUE)) %>%
config(displayModeBar = FALSE, showTips = T)
)
library(htmlwidgets)
saveWidget(graph4_interactive, "pictures/vokalformanten_interaktiv_l1_l2_lang_kurz.html",
selfcontained = T)
# Sys.setenv("plotly_username"="dataslice")
# Sys.setenv("plotly_api_key"="x")
#
# api_create(space_times, "Space Times")
# save it in html
library("htmlwidgets")
saveWidget(graph4_interactive,"tmp.html", selfcontained = F)
# and in pdf
library(webshot)
webshot("tmp.html","pictures/vokalformanten_interaktiv_l1_l2_lang_kurz.png", delay =5, vwidth = 1000, vheight=800)
webshot("tmp.html","pictures/vokalformanten_interaktiv_l1_l2_lang_kurz.pdf", delay =5, vwidth = 800, vheight=600)
(vgl_pivot <- vergleich %>%
group_by(vokal) %>%
pivot_longer(f1_l1:dauer_l2, names_to = "category", values_to = "value") %>%
separate(category, into = c("category", "l1_l2")) %>%
drop_na() %>%
pivot_wider(names_from = category, values_from = value)
)
## # A tibble: 30 x 7
## # Groups: vokal [15]
## vokal lange vowel l1_l2 f1 f2 dauer
## <chr> <chr> <chr> <chr> <dbl> <dbl> <dbl>
## 1 a kurz a l1 836 1586 82.8
## 2 a kurz a l2 840. 1583. 73.7
## 3 a: lang a: l1 896 1517 154.
## 4 a: lang a: l2 784 1632 208.
## 5 e: lang e: l1 434 2461 118.
## 6 e: lang e: l2 553. 2062. 140.
## 7 E kurz <U+025B> l1 608 2040 82.7
## 8 E kurz <U+025B> l2 560 1953. 72.5
## 9 E: lang <U+025B><U+02D0> l1 584 2166 126.
## 10 E: lang <U+025B><U+02D0> l2 566. 2062. 142.
## # ... with 20 more rows
(graph5 <- vgl_pivot %>%
drop_na() %>%
group_by(vokal, l1_l2, lange) %>%
ggplot(aes(f2,f1)) +
geom_hex(alpha = 0.2, show.legend = F) +
geom_text(aes(label = vowel, color = vowel),
vjust = 1, hjust = 1, check_overlap = T, show.legend = F, size = 6) +
scale_y_reverse() +
scale_x_reverse(breaks = c(1000, 1250, 1500, 1750, 2000, 2250, 2500)) +
facet_wrap(~ l1_l2) +
theme_light() +
labs(y = "Formant F1: tief >> hoch",
x = "Formant F2: << vorne - hinten >>")
)
ggsave("pictures/vergleich_vokalformanten_lang_kurz_ipa.jpg")
## Saving 7 x 5 in image
library(plotly)
ggplotly(graph5) %>% layout(showlegend = FALSE)
Messungen von TP mit Praat-Script (–> Matt Winn)
library(ggrepel)
(graph6 <- df %>%
filter(speaker != "Monika1") %>%
group_by(vowel, speaker, IPA) %>%
summarise(f1 = mean(F1),
f2 = mean(F2)) %>%
ggplot(aes(f2,f1)) +
geom_hex(alpha = 0.2, show.legend = F) +
geom_text(aes(label = IPA, color = IPA),
vjust = 1, hjust = 1, check_overlap = T, show.legend = F, size = 5) +
# geom_label_repel(aes(label = IPA, color = IPA),
# vjust = 1, hjust = 1, check_overlap = T, show.legend = F, size = 5) +
scale_y_reverse() +
scale_x_reverse(breaks = c(1000, 1250, 1500, 1750, 2000, 2250, 2500)) +
facet_wrap(~ speaker) +
# theme_light() +
theme(axis.text.x = element_text(angle = 60, hjust = 1)) +
labs(y = "Formant F1: tief >> hoch",
x = "Formant F2: << vorne - hinten >>")
)
## `summarise()` has grouped output by 'vowel', 'speaker'. You can override using the `.groups` argument.
## Warning: Removed 1 rows containing missing values (geom_text).
ggsave("pictures/messungen_tp_vokalformanten_ipa.jpg", dpi = 100, width = 10, height = 10)
## Warning: Removed 1 rows containing missing values (geom_text).
library(plotly)
ggplotly(graph6) %>% layout(showlegend = FALSE)
vowlist1 <- c("i:","I","ü:","Ü","e:","E","ö:","Ö","E:","a:","a","o:","O","u:","U") # unsere Symbole
vowlist2 = c("i:","I","ue:","Ue","e:","E","oe:","Oe","E:","a:","a","o:","O","u:","U") # Umlautsymbole ersetzt
vowlist3 = c("i:","I","y:","Y","e:","E","2:","9","E:","a:","a","o:","O","u:","U") # Sampa
vowlist4 = c("i:","I","ii:","II","e:","E","ee:","EE","E:","a:","a","o:","O","u:","U") # Verdoppelung langer Vokale
vokale_agg <- vokale %>%
group_by(vokal, lange, l1_l2) %>%
summarise(f1_avg = mean(f1),
f2_avg = mean(f2),
dauer_avg = mean(dauer))
## `summarise()` has grouped output by 'vokal', 'lange'. You can override using the `.groups` argument.
ipavow2 = c(a,A,E,e,EE,I,i,O,OE,o,oe,U,Y,u,y) %>% as_tibble() %>% rename(vowel = value)
vokale_agg1 <- vokale_agg %>% filter(l1_l2 == "L1") %>% cbind(ipavow2)
vokale_agg2 <- vokale_agg %>% filter(l1_l2 == "L2") %>% cbind(ipavow2)
(vokale_agg <- rbind(vokale_agg1, vokale_agg2) %>% as_tibble())
## # A tibble: 30 x 7
## vokal lange l1_l2 f1_avg f2_avg dauer_avg vowel
## <chr> <chr> <chr> <dbl> <dbl> <dbl> <chr>
## 1 a kurz L1 770. 1948. 94.5 a
## 2 a: lang L1 877 1711. 226 a:
## 3 E kurz L1 515 2114. 55.8 <U+025B>
## 4 e: lang L1 592. 2621. 131. e:
## 5 E: lang L1 630 2140. 135. <U+025B><U+02D0>
## 6 I kurz L1 645. 2310. 49.8 <U+026A>
## 7 i: lang L1 546. 2666 122. i:
## 8 O kurz L1 567 1338. 81 <U+0254>
## 9 Ö kurz L1 470. 1972. 85.5 œ
## 10 o: lang L1 424. 1107 134. o:
## # ... with 20 more rows
# c("i:","I","ü:","Ü","e:","E","ö:","Ö","E:","a:","a","o:","O","u:","U")
library(tidytext)
## Warning: package 'tidytext' was built under R version 4.0.5
library(ggrepel)
(graph <- vokale %>%
group_by(vokal, l1_l2, color = vokal, label = vokal, fill = vokal, shape = vokal) %>%
ggplot(aes(f2,f1)) +
geom_hex(alpha = 0.2, show.legend = F) +
geom_label(data = vokale_agg, label = vokale_agg$vowel, aes(x = f2_avg, y = f1_avg), color = "black") +
stat_ellipse(level = 0.67, geom = "polygon", alpha = 0.2) +
scale_color_discrete(breaks = c("a","a:","e:","E","E:","I","i:","O","o:","U","u:","Y","y:","Ö","ö")) +
# geom_text(aes(label = vokal, color = vokal), vjust = 1, hjust = 1, check_overlap = T, show.legend = F) +
scale_y_reverse() +
scale_x_reverse() +
facet_wrap(~ l1_l2) +
theme_light() +
guides(color = F) +
labs(y = "Formant F1: tief >> hoch",
x = "Formant F2: << vorne - hinten >>")
)
(graph <- vokale_agg %>%
group_by(vokal, l1_l2, label = vowel) %>%
ggplot(aes(f2_avg,f1_avg)) +
geom_hex(alpha = 0.2, show.legend = F) +
geom_text(aes(label = vowel, color = vowel),
size = 6, vjust = 1, hjust = 1, check_overlap = T, show.legend = F) +
scale_y_reverse() +
scale_x_reverse() +
facet_wrap(~ l1_l2) +
theme_light() +
labs(y = "Formant F1: tief >> hoch",
x = "Formant F2: << vorne - hinten >>")
)
ggsave("pictures/vokalformanten.jpg")
## Saving 7 x 5 in image
library(plotly)
ggplotly(graph) %>% layout(showlegend = FALSE)
(vgl_pivot <- vergleich %>%
group_by(vokal) %>%
pivot_longer(f1_l1:dauer_l2, names_to = "category", values_to = "value") %>%
separate(category, into = c("category", "l1_l2")) %>%
drop_na() %>%
pivot_wider(names_from = category, values_from = value)
)
## # A tibble: 30 x 7
## # Groups: vokal [15]
## vokal lange vowel l1_l2 f1 f2 dauer
## <chr> <chr> <chr> <chr> <dbl> <dbl> <dbl>
## 1 a kurz a l1 836 1586 82.8
## 2 a kurz a l2 840. 1583. 73.7
## 3 a: lang a: l1 896 1517 154.
## 4 a: lang a: l2 784 1632 208.
## 5 e: lang e: l1 434 2461 118.
## 6 e: lang e: l2 553. 2062. 140.
## 7 E kurz <U+025B> l1 608 2040 82.7
## 8 E kurz <U+025B> l2 560 1953. 72.5
## 9 E: lang <U+025B><U+02D0> l1 584 2166 126.
## 10 E: lang <U+025B><U+02D0> l2 566. 2062. 142.
## # ... with 20 more rows
(graph2 <- vgl_pivot %>%
drop_na() %>%
group_by(vokal, l1_l2) %>%
ggplot(aes(f2,f1)) +
geom_hex(alpha = 0.2, show.legend = F) +
geom_text(aes(label = vowel, color = vowel),
size = 6, vjust = 1, hjust = 1, check_overlap = T, show.legend = F) +
scale_y_reverse() +
scale_x_reverse(breaks = c(1000, 1250, 1500, 1750, 2000, 2250, 2500)) +
facet_wrap(~ l1_l2) +
theme_light() +
labs(y = "Formant F1: tief >> hoch",
x = "Formant F2: << vorne - hinten >>")
)
ggsave("pictures/vergleich_vokalformanten.jpg")
## Saving 7 x 5 in image
library(plotly)
ggplotly(graph2) %>% layout(showlegend = FALSE)
(vgl_pivot <- vergleich %>%
group_by(vokal) %>%
pivot_longer(f1_l1:dauer_l2, names_to = "category", values_to = "value") %>%
separate(category, into = c("category", "l1_l2")) %>%
drop_na() %>%
pivot_wider(names_from = category, values_from = value)
)
## # A tibble: 30 x 7
## # Groups: vokal [15]
## vokal lange vowel l1_l2 f1 f2 dauer
## <chr> <chr> <chr> <chr> <dbl> <dbl> <dbl>
## 1 a kurz a l1 836 1586 82.8
## 2 a kurz a l2 840. 1583. 73.7
## 3 a: lang a: l1 896 1517 154.
## 4 a: lang a: l2 784 1632 208.
## 5 e: lang e: l1 434 2461 118.
## 6 e: lang e: l2 553. 2062. 140.
## 7 E kurz <U+025B> l1 608 2040 82.7
## 8 E kurz <U+025B> l2 560 1953. 72.5
## 9 E: lang <U+025B><U+02D0> l1 584 2166 126.
## 10 E: lang <U+025B><U+02D0> l2 566. 2062. 142.
## # ... with 20 more rows
(graph3 <- vgl_pivot %>%
drop_na() %>%
group_by(vokal, l1_l2, lange) %>%
ggplot(aes(f2,f1)) +
geom_hex(alpha = 0.2, show.legend = F) +
geom_text(aes(label = vowel, color = vowel),
size = 6, vjust = 1, hjust = 1, check_overlap = T, show.legend = F) +
scale_y_reverse() +
scale_x_reverse(breaks = c(1000, 1250, 1500, 1750, 2000, 2250, 2500)) +
facet_wrap(~ lange + l1_l2) +
theme_light() +
labs(y = "Formant F1: tief >> hoch",
x = "Formant F2: << vorne - hinten >>")
)
ggsave("pictures/vergleich_vokalformanten_lang_kurz.jpg")
## Saving 7 x 5 in image
library(plotly)
ggplotly(graph2) %>% layout(showlegend = FALSE)
library(phonR)
par(mfrow = c(1, 1))
with(vokale_agg, plotVowels(f1_avg, f2_avg, vowel, group = lange, pch.tokens = vowel, cex.tokens = 1.2,
alpha.tokens = 0.3, plot.means = TRUE, pch.means = vowel, cex.means = 2, var.col.by = vowel,
var.sty.by = lange, hull.fill = TRUE, hull.line = TRUE, fill.opacity = 0.1,
pretty = TRUE))
# 1. Open jpeg file
jpeg("pictures/phonR_vowel_space.jpg",
width = 840, height = 535)
# 2. Create the plot
with(vokale_agg, plotVowels(f1_avg, f2_avg, vowel, group = lange, pch.tokens = vowel, cex.tokens = 1.2,
alpha.tokens = 0.3, plot.means = TRUE, pch.means = vowel, cex.means = 2, var.col.by = vowel,
var.sty.by = lange, hull.fill = TRUE, hull.line = TRUE, fill.opacity = 0.1,
pretty = TRUE))
# 3. Close the file
dev.off()
## cairo_pdf
## 2
library(phonR)
par(mfrow = c(1, 1))
with(vokale, plotVowels(f1, f2, vokal, group = lange, pch.tokens = vokal, cex.tokens = 1.2,
alpha.tokens = 0.3, plot.means = TRUE, pch.means = vokal, cex.means = 2, var.col.by = lange,
var.sty.by = lange, hull.fill = TRUE, hull.line = TRUE, fill.opacity = 0.1,
pretty = TRUE))
# 1. Open jpeg file
jpeg("pictures/phonR_vowel_space2.jpg",
width = 840, height = 535)
# 2. Create the plot
with(vokale, plotVowels(f1, f2, vokal, group = lange, pch.tokens = vokal, cex.tokens = 1.2,
alpha.tokens = 0.3, plot.means = TRUE, pch.means = vokal, cex.means = 2, var.col.by = lange,
var.sty.by = lange, hull.fill = TRUE, hull.line = TRUE, fill.opacity = 0.1,
pretty = TRUE))
# 3. Close the file
dev.off()
## cairo_pdf
## 2
Author: Romeo Mlinar Mail: mlinar [a] languagebits.com Url: http://www.languagebits.com/?p=766
# Diphthongs in ASCII
diph.names.ascii <- c('ey', 'ey', 'ay', 'ay', 'oy', 'oy',
'ow', 'ow', 'aw', 'aw', 'ia', 'ia',
'ea', 'ea', 'ua', 'ua')
# Diphthong in hexadecimal values
# Available from: http://www.phon.ucl.ac.uk/home/wells/ipa-unicode.htm
diph.names.ipa <- c('e\u026A', 'a\u026A', '\u0254\u026A',
'\u0259\u028A', '\u0251\u028A', '\u026A\u0259',
'\u025B\u0259', '\u028A\u0259')
# Sample data
data.sample <- c(1:8)
# Make data frame for values
toplot <- data.frame( diph.names.ipa, data.sample)
#Draw a simple graph.
# plot(toplot, main='IPA Symbols in R Graph')
toplot %>%
ggplot(aes(diph.names.ipa, data.sample)) +
geom_point() +
labs(title = 'IPA Symbols in R Graph')
# 1. Open jpeg file
jpeg("pictures/ipa_symbols.jpg",
width = 840, height = 535)
# 2. Create the plot
toplot %>%
ggplot(aes(diph.names.ipa, data.sample)) +
geom_point() +
labs(title = 'IPA Symbols in R Graph')
# 3. Close the file
dev.off()
## cairo_pdf
## 2